{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# ***Introduction to Radar Using Python and MATLAB***\n",
    "## Andy Harrison - Copyright (C) 2019 Artech House\n",
    "<br/>\n",
    "\n",
    "# Optimum Binary Detection\n",
    "***"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Binary integration is another form of noncoherent integration, often referred to as $M$ of $N$ detection, and is shown in Figure 6.10.  In this form of integration, each of the $N$ return signals is passed separately through the threshold detector.  There must be $M$ individual detection declarations in order for a target to be declared as present.  Binary integration is somewhat simpler to implement than coherent and noncoherent integration.\n",
    "\n",
    "The probability of detection for binary integration is written as (Equation 6.24)\n",
    "\n",
    "$$\n",
    "    P_{{MN}} = \\sum_{k=M}^N C_{{kN}}\\cdot p^k\\cdot (1-p)^{N-k},\n",
    "$$\n",
    "\n",
    "where $p$ is the single pulse probability of detection, and $C_{{kN}}$ is the binomial coefficient given by (Equation 6.25)\n",
    "\n",
    "$$\n",
    "    C_{{kN}} = \\frac{N!}{k!\\, (N-k)!}.\n",
    "$$\n",
    "\n",
    "Similarly, the probability of false alarm is (Equation 6.26)\n",
    "\n",
    "$$\n",
    "    F_{{MN}} = \\sum_{k=M}^N C_{{kN}}\\cdot f^k\\cdot (1-f)^{N-k},\n",
    "$$\n",
    "\n",
    "where $f$ is the single pulse probability of false alarm. For binary integration, some optimum value of $M$ exists that minimizes the required signal-to-noise ratio for given probabilities of detection and false alarm, and a given $N$.  Richards  provides a nice approximation for $M$ for various target fluctuations, which is given here as (Equation 6.27)\n",
    "\n",
    "$$\n",
    "    M_{{opt}} = 10^{\\beta}\\, N^{\\alpha},\n",
    "$$\n",
    "\n",
    "where the values for $\\alpha$ and $\\beta$ are given in Table 6.3.\n",
    "***"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Begin by getting the library path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import lib_path"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Set the number of pulses"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "number_of_pulses = 10"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Set the target type and associated parameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "target_type = 'Swerling 2'\n",
    "\n",
    "        \n",
    "if target_type == 'Swerling 0':\n",
    "\n",
    "    alpha = 0.8\n",
    "    \n",
    "    beta = -0.02\n",
    "    \n",
    "elif target_type == 'Swerling 1':\n",
    "\n",
    "    alpha = 0.8\n",
    "    \n",
    "    beta = -0.02\n",
    "        \n",
    "elif target_type == 'Swerling 2':\n",
    "\n",
    "    alpha = 0.91\n",
    "    \n",
    "    beta = -0.38\n",
    "        \n",
    "elif target_type == 'Swerling 3':\n",
    "            \n",
    "        alpha = 0.8\n",
    "        \n",
    "        beta = -0.02\n",
    "        \n",
    "elif target_type == 'Swerling 4':\n",
    "\n",
    "    alpha = 0.873\n",
    "    \n",
    "    beta = -0.27"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Calculate the optimum choice for M"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from numpy import arange, ceil\n",
    "\n",
    "np = arange(1, number_of_pulses+1)\n",
    "        \n",
    "m_optimum = [ceil(10.0 ** beta * n ** alpha) for n in np]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Display the optimum number of pulses for binary integration using the `matplotlib` routines"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x720 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "from matplotlib import pyplot as plt\n",
    "\n",
    "from numpy import log10\n",
    "\n",
    "\n",
    "\n",
    "# Set the figure size\n",
    "\n",
    "plt.rcParams[\"figure.figsize\"] = (15, 10)\n",
    "\n",
    "\n",
    "# display the result\n",
    "\n",
    "plt.plot(np, m_optimum, '')\n",
    "\n",
    "\n",
    "# Set the plot title and labels\n",
    "\n",
    "plt.title('Optimum M for Binary Integration', size=14)\n",
    "\n",
    "plt.xlabel('Number of Pulses', size=12)\n",
    "\n",
    "plt.ylabel('M', size=12)\n",
    "\n",
    "\n",
    "\n",
    "# Set the tick label size\n",
    "\n",
    "plt.tick_params(labelsize=12)\n",
    "\n",
    "\n",
    "\n",
    "# Turn on the grid\n",
    "\n",
    "plt.grid(linestyle=':', linewidth=0.5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
